package com.bestcem.xm.user.dao.mapper;

import com.bestcem.xm.user.entity.base.Paginator;
import com.bestcem.xm.user.entity.mysql.UserGroupImportRecord;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 组织导入记录 mapper
 *
 * @author wangyunyun <yunyun.wang@idiaoyan.com>
 * @version v1.0
 * @date 2022/4/19 17:30
 */
@Mapper
public interface UserGroupImportRecordMapper {

    /**
     * 新增组织导入记录
     *
     * @param param 组织导入记录 对象
     * @return int
     * @author wangyunyun <yunyun.wang@idiaoyan.com>
     * @date 2022/4/19 17:45
     */
    int insertSelective(UserGroupImportRecord param);

    /**
     * 根据id和公司id更新组织导入记录
     *
     * @param param 组织导入记录 对象
     * @return int
     * @author wangyunyun <yunyun.wang@idiaoyan.com>
     * @date 2022/4/19 17:45
     */
    int updateByPrimaryKeySelective(UserGroupImportRecord param);

    /**
     * 根据条件查询组织导入记录
     *
     * @param param 组织导入记录 对象
     * @return List<UserGroupImportRecord>
     * @author wangyunyun <yunyun.wang@idiaoyan.com>
     * @date 2022/4/19 17:45
     */
    List<UserGroupImportRecord> selectBySelective(UserGroupImportRecord param);

    /**
     * 通过条件统计组织导入记录
     *
     * @param userGroupImportRecord 组织导入记录 对象
     * @return long
     * @author wangyunyun <yunyun.wang@idiaoyan.com>
     * @date 2022/4/20 10:31
     */
    long countBySelective(UserGroupImportRecord userGroupImportRecord);

    /**
     * 通过分页条件查询组织导入记录
     *
     * @param param 组织导入记录
     * @param paginator 分页器
     * @return List<UserGroupImportRecord>
     * @author wangyunyun <yunyun.wang@idiaoyan.com>
     * @date 2022/4/20 16:13
     */
    List<UserGroupImportRecord> selectByPage(@Param("param") UserGroupImportRecord param, @Param("paginator") Paginator paginator);
}
